Measuring the true end-user interaction experience with applications operating within a Server Based Computing (SBC) (also referred to a distributed computing system) environment is a complicated task. There are several factors that contribute to the interaction experience: client performance, client load, network characteristics, network performance, server performance, and server load. Further, if the application executing on the server is required to make additional network calls to other servers, then extra measurements are added to the interaction time. As used herein, the interaction experience refers to the time between the end-user providing input to the application at a client and the graphic response to that input being displayed on the client. The interaction experience can be thought of as the end-user's experience while using a client of the SBC.
Because different applications behave in different ways when responding to different input events, it is difficult to establish a method for arbitrary applications in which the interaction experience can be accurately measured. In the past, monitoring solutions have been built around measuring traffic between the client and the server components of the SBC. An example of a known method is the “ping” utility. Ping uses the Internet Control Message Protocol (ICMP) Echo function which is detailed in RFC 792. A small packet of information containing an ICMP ECHO_REQUEST is sent through the network to either a particular IP address or a domain name. The computer that sent the packet then waits (or ‘listens’) for a ECHO_REPLY packet from the specified IP address. The ping program then evaluates this reply, and a report is shown. You can check several things with the ping program: can you reach another computer, how long does it take to bounce a packet off of another site.